[INFO] fetching crate drawing_gl 0.1.0...
[INFO] building drawing_gl-0.1.0 against master#881c1ac408d93bb7adaa3a51dabab9266e82eee8 for issue-85264
[INFO] extracting crate drawing_gl 0.1.0 into /workspace/builds/worker-8/source
[INFO] validating manifest of crates.io crate drawing_gl 0.1.0 on toolchain 881c1ac408d93bb7adaa3a51dabab9266e82eee8
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate drawing_gl 0.1.0
[INFO] finished tweaking crates.io crate drawing_gl 0.1.0
[INFO] tweaked toml for crates.io crate drawing_gl 0.1.0 written to /workspace/builds/worker-8/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded drawing v0.1.0
[INFO] [stderr]   Downloaded clamped v1.0.0
[INFO] [stderr]   Downloaded euclid v0.21.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2bee49834b3a399bd36909da482703322f7e901d1bfe330b0054e9a0d290cf43
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "2bee49834b3a399bd36909da482703322f7e901d1bfe330b0054e9a0d290cf43", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2bee49834b3a399bd36909da482703322f7e901d1bfe330b0054e9a0d290cf43", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2bee49834b3a399bd36909da482703322f7e901d1bfe330b0054e9a0d290cf43", kill_on_drop: false }`
[INFO] [stdout] 2bee49834b3a399bd36909da482703322f7e901d1bfe330b0054e9a0d290cf43
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 66a539865b0f60039a85ab1d90c9e7dc7340b81eec97f2cdac42787c69f7b534
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "66a539865b0f60039a85ab1d90c9e7dc7340b81eec97f2cdac42787c69f7b534", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.95
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling pkg-config v0.3.19
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling cc v1.0.68
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling proc-macro2 v1.0.27
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling downcast-rs v1.2.0
[INFO] [stderr]    Compiling xdg v2.2.0
[INFO] [stderr]    Compiling anyhow v1.0.40
[INFO] [stderr]    Compiling clamped v1.0.0
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling stb_truetype v0.3.1
[INFO] [stderr]    Compiling libloading v0.6.7
[INFO] [stderr]    Compiling instant v0.1.9
[INFO] [stderr]    Compiling walkdir v2.3.2
[INFO] [stderr]    Compiling dlib v0.4.2
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling wayland-sys v0.23.6
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]    Compiling cmake v0.1.45
[INFO] [stderr]    Compiling x11-dl v2.18.5
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling syn v1.0.72
[INFO] [stderr]    Compiling freetype-sys v0.13.1
[INFO] [stderr]    Compiling libloading v0.5.2
[INFO] [stderr]    Compiling wayland-scanner v0.23.6
[INFO] [stderr]    Compiling net2 v0.2.37
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling memmap v0.7.0
[INFO] [stderr]    Compiling parking_lot_core v0.7.2
[INFO] [stderr]    Compiling raw-window-handle v0.3.3
[INFO] [stderr]    Compiling shared_library v0.1.9
[INFO] [stderr]    Compiling osmesa-sys v0.1.2
[INFO] [stderr]    Compiling mio v0.6.23
[INFO] [stderr]    Compiling parking_lot v0.10.2
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.7
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.5
[INFO] [stderr]    Compiling gl v0.14.0
[INFO] [stderr]    Compiling ordered-float v1.1.1
[INFO] [stderr]    Compiling approx v0.3.2
[INFO] [stderr]    Compiling line_drawing v0.7.0
[INFO] [stderr]    Compiling euclid v0.21.0
[INFO] [stderr]    Compiling freetype-rs v0.26.0
[INFO] [stderr]    Compiling rusttype v0.8.3
[INFO] [stderr]    Compiling rusttype v0.7.9
[INFO] [stderr]    Compiling andrew v0.2.1
[INFO] [stderr]    Compiling mio-extras v2.0.6
[INFO] [stderr]    Compiling wayland-client v0.23.6
[INFO] [stderr]    Compiling wayland-protocols v0.23.6
[INFO] [stderr]    Compiling wayland-commons v0.23.6
[INFO] [stderr]    Compiling calloop v0.4.4
[INFO] [stderr]    Compiling thiserror-impl v1.0.25
[INFO] [stderr]    Compiling thiserror v1.0.25
[INFO] [stderr]    Compiling drawing v0.1.0
[INFO] [stderr]    Compiling smithay-client-toolkit v0.6.6
[INFO] [stderr]    Compiling winit v0.22.2
[INFO] [stderr]    Compiling glutin v0.24.1
[INFO] [stderr]    Compiling drawing_gl v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variant is never constructed: `Image`
[INFO] [stdout]   --> src/pipelines/universal_pipeline.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Image,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/colored_pipeline.rs:21:85
[INFO] [stdout]    |
[INFO] [stdout] 21 |             gl::GetUniformLocation(program.id(), CString::new("transform").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(temporary_cstring_as_ptr)]` on by default
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/colored_pipeline.rs:99:88
[INFO] [stdout]    |
[INFO] [stdout] 99 |                 gl::GetAttribLocation(program_id, CString::new("in_position").unwrap().as_ptr());
[INFO] [stdout]    |                                                   ------------------------------------ ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                   |
[INFO] [stdout]    |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/colored_pipeline.rs:111:85
[INFO] [stdout]     |
[INFO] [stdout] 111 |                 gl::GetAttribLocation(program_id, CString::new("in_color").unwrap().as_ptr());
[INFO] [stdout]     |                                                   --------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/textured_pipeline.rs:22:85
[INFO] [stdout]    |
[INFO] [stdout] 22 |             gl::GetUniformLocation(program.id(), CString::new("transform").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/textured_pipeline.rs:25:85
[INFO] [stdout]    |
[INFO] [stdout] 25 |             gl::GetUniformLocation(program.id(), CString::new("flipped_y").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_pipeline.rs:102:88
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 gl::GetAttribLocation(program_id, CString::new("in_position").unwrap().as_ptr());
[INFO] [stdout]     |                                                   ------------------------------------ ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_pipeline.rs:114:90
[INFO] [stdout]     |
[INFO] [stdout] 114 |                 gl::GetAttribLocation(program_id, CString::new("in_tex_coords").unwrap().as_ptr());
[INFO] [stdout]     |                                                   -------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_pipeline.rs:126:85
[INFO] [stdout]     |
[INFO] [stdout] 126 |                 gl::GetAttribLocation(program_id, CString::new("in_color").unwrap().as_ptr());
[INFO] [stdout]     |                                                   --------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/textured_y8_pipeline.rs:24:85
[INFO] [stdout]    |
[INFO] [stdout] 24 |             gl::GetUniformLocation(program.id(), CString::new("transform").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/textured_y8_pipeline.rs:27:85
[INFO] [stdout]    |
[INFO] [stdout] 27 |             gl::GetUniformLocation(program.id(), CString::new("flipped_y").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_y8_pipeline.rs:104:88
[INFO] [stdout]     |
[INFO] [stdout] 104 |                 gl::GetAttribLocation(program_id, CString::new("in_position").unwrap().as_ptr());
[INFO] [stdout]     |                                                   ------------------------------------ ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_y8_pipeline.rs:116:90
[INFO] [stdout]     |
[INFO] [stdout] 116 |                 gl::GetAttribLocation(program_id, CString::new("in_tex_coords").unwrap().as_ptr());
[INFO] [stdout]     |                                                   -------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_y8_pipeline.rs:128:85
[INFO] [stdout]     |
[INFO] [stdout] 128 |                 gl::GetAttribLocation(program_id, CString::new("in_color").unwrap().as_ptr());
[INFO] [stdout]     |                                                   --------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/universal_pipeline.rs:51:85
[INFO] [stdout]    |
[INFO] [stdout] 51 |             gl::GetUniformLocation(program.id(), CString::new("transform").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/universal_pipeline.rs:56:86
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 gl::GetUniformBlockIndex(program.id(), CString::new("frag").unwrap().as_ptr());
[INFO] [stdout]    |                                                        ----------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                        |
[INFO] [stdout]    |                                                        this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/universal_pipeline.rs:192:88
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 gl::GetAttribLocation(program_id, CString::new("in_position").unwrap().as_ptr());
[INFO] [stdout]     |                                                   ------------------------------------ ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/universal_pipeline.rs:204:90
[INFO] [stdout]     |
[INFO] [stdout] 204 |                 gl::GetAttribLocation(program_id, CString::new("in_tex_coords").unwrap().as_ptr());
[INFO] [stdout]     |                                                   -------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/universal_pipeline.rs:216:85
[INFO] [stdout]     |
[INFO] [stdout] 216 |                 gl::GetAttribLocation(program_id, CString::new("in_color").unwrap().as_ptr());
[INFO] [stdout]     |                                                   --------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 44.91s
[INFO] running `Command { std: "docker" "inspect" "66a539865b0f60039a85ab1d90c9e7dc7340b81eec97f2cdac42787c69f7b534", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "66a539865b0f60039a85ab1d90c9e7dc7340b81eec97f2cdac42787c69f7b534", kill_on_drop: false }`
[INFO] [stdout] 66a539865b0f60039a85ab1d90c9e7dc7340b81eec97f2cdac42787c69f7b534
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ceadbc5638354a613fb6851bcc7e4709fe6eb8c9b0dcb59751610ba5c70afc4f
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "ceadbc5638354a613fb6851bcc7e4709fe6eb8c9b0dcb59751610ba5c70afc4f", kill_on_drop: false }`
[INFO] [stdout] warning: variant is never constructed: `Image`
[INFO] [stdout]   --> src/pipelines/universal_pipeline.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Image,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/colored_pipeline.rs:21:85
[INFO] [stdout]    |
[INFO] [stdout] 21 |             gl::GetUniformLocation(program.id(), CString::new("transform").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(temporary_cstring_as_ptr)]` on by default
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/colored_pipeline.rs:99:88
[INFO] [stdout]    |
[INFO] [stdout] 99 |                 gl::GetAttribLocation(program_id, CString::new("in_position").unwrap().as_ptr());
[INFO] [stdout]    |                                                   ------------------------------------ ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                   |
[INFO] [stdout]    |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/colored_pipeline.rs:111:85
[INFO] [stdout]     |
[INFO] [stdout] 111 |                 gl::GetAttribLocation(program_id, CString::new("in_color").unwrap().as_ptr());
[INFO] [stdout]     |                                                   --------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/textured_pipeline.rs:22:85
[INFO] [stdout]    |
[INFO] [stdout] 22 |             gl::GetUniformLocation(program.id(), CString::new("transform").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/textured_pipeline.rs:25:85
[INFO] [stdout]    |
[INFO] [stdout] 25 |             gl::GetUniformLocation(program.id(), CString::new("flipped_y").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling drawing_gl v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_pipeline.rs:102:88
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 gl::GetAttribLocation(program_id, CString::new("in_position").unwrap().as_ptr());
[INFO] [stdout]     |                                                   ------------------------------------ ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_pipeline.rs:114:90
[INFO] [stdout]     |
[INFO] [stdout] 114 |                 gl::GetAttribLocation(program_id, CString::new("in_tex_coords").unwrap().as_ptr());
[INFO] [stdout]     |                                                   -------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_pipeline.rs:126:85
[INFO] [stdout]     |
[INFO] [stdout] 126 |                 gl::GetAttribLocation(program_id, CString::new("in_color").unwrap().as_ptr());
[INFO] [stdout]     |                                                   --------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/textured_y8_pipeline.rs:24:85
[INFO] [stdout]    |
[INFO] [stdout] 24 |             gl::GetUniformLocation(program.id(), CString::new("transform").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/textured_y8_pipeline.rs:27:85
[INFO] [stdout]    |
[INFO] [stdout] 27 |             gl::GetUniformLocation(program.id(), CString::new("flipped_y").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_y8_pipeline.rs:104:88
[INFO] [stdout]     |
[INFO] [stdout] 104 |                 gl::GetAttribLocation(program_id, CString::new("in_position").unwrap().as_ptr());
[INFO] [stdout]     |                                                   ------------------------------------ ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_y8_pipeline.rs:116:90
[INFO] [stdout]     |
[INFO] [stdout] 116 |                 gl::GetAttribLocation(program_id, CString::new("in_tex_coords").unwrap().as_ptr());
[INFO] [stdout]     |                                                   -------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_y8_pipeline.rs:128:85
[INFO] [stdout]     |
[INFO] [stdout] 128 |                 gl::GetAttribLocation(program_id, CString::new("in_color").unwrap().as_ptr());
[INFO] [stdout]     |                                                   --------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/universal_pipeline.rs:51:85
[INFO] [stdout]    |
[INFO] [stdout] 51 |             gl::GetUniformLocation(program.id(), CString::new("transform").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/universal_pipeline.rs:56:86
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 gl::GetUniformBlockIndex(program.id(), CString::new("frag").unwrap().as_ptr());
[INFO] [stdout]    |                                                        ----------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                        |
[INFO] [stdout]    |                                                        this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/universal_pipeline.rs:192:88
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 gl::GetAttribLocation(program_id, CString::new("in_position").unwrap().as_ptr());
[INFO] [stdout]     |                                                   ------------------------------------ ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/universal_pipeline.rs:204:90
[INFO] [stdout]     |
[INFO] [stdout] 204 |                 gl::GetAttribLocation(program_id, CString::new("in_tex_coords").unwrap().as_ptr());
[INFO] [stdout]     |                                                   -------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/universal_pipeline.rs:216:85
[INFO] [stdout]     |
[INFO] [stdout] 216 |                 gl::GetAttribLocation(program_id, CString::new("in_color").unwrap().as_ptr());
[INFO] [stdout]     |                                                   --------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Image`
[INFO] [stdout]   --> src/pipelines/universal_pipeline.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Image,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/colored_pipeline.rs:21:85
[INFO] [stdout]    |
[INFO] [stdout] 21 |             gl::GetUniformLocation(program.id(), CString::new("transform").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(temporary_cstring_as_ptr)]` on by default
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/colored_pipeline.rs:99:88
[INFO] [stdout]    |
[INFO] [stdout] 99 |                 gl::GetAttribLocation(program_id, CString::new("in_position").unwrap().as_ptr());
[INFO] [stdout]    |                                                   ------------------------------------ ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                   |
[INFO] [stdout]    |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/colored_pipeline.rs:111:85
[INFO] [stdout]     |
[INFO] [stdout] 111 |                 gl::GetAttribLocation(program_id, CString::new("in_color").unwrap().as_ptr());
[INFO] [stdout]     |                                                   --------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/textured_pipeline.rs:22:85
[INFO] [stdout]    |
[INFO] [stdout] 22 |             gl::GetUniformLocation(program.id(), CString::new("transform").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/textured_pipeline.rs:25:85
[INFO] [stdout]    |
[INFO] [stdout] 25 |             gl::GetUniformLocation(program.id(), CString::new("flipped_y").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_pipeline.rs:102:88
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 gl::GetAttribLocation(program_id, CString::new("in_position").unwrap().as_ptr());
[INFO] [stdout]     |                                                   ------------------------------------ ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_pipeline.rs:114:90
[INFO] [stdout]     |
[INFO] [stdout] 114 |                 gl::GetAttribLocation(program_id, CString::new("in_tex_coords").unwrap().as_ptr());
[INFO] [stdout]     |                                                   -------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_pipeline.rs:126:85
[INFO] [stdout]     |
[INFO] [stdout] 126 |                 gl::GetAttribLocation(program_id, CString::new("in_color").unwrap().as_ptr());
[INFO] [stdout]     |                                                   --------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/textured_y8_pipeline.rs:24:85
[INFO] [stdout]    |
[INFO] [stdout] 24 |             gl::GetUniformLocation(program.id(), CString::new("transform").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/textured_y8_pipeline.rs:27:85
[INFO] [stdout]    |
[INFO] [stdout] 27 |             gl::GetUniformLocation(program.id(), CString::new("flipped_y").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_y8_pipeline.rs:104:88
[INFO] [stdout]     |
[INFO] [stdout] 104 |                 gl::GetAttribLocation(program_id, CString::new("in_position").unwrap().as_ptr());
[INFO] [stdout]     |                                                   ------------------------------------ ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_y8_pipeline.rs:116:90
[INFO] [stdout]     |
[INFO] [stdout] 116 |                 gl::GetAttribLocation(program_id, CString::new("in_tex_coords").unwrap().as_ptr());
[INFO] [stdout]     |                                                   -------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/textured_y8_pipeline.rs:128:85
[INFO] [stdout]     |
[INFO] [stdout] 128 |                 gl::GetAttribLocation(program_id, CString::new("in_color").unwrap().as_ptr());
[INFO] [stdout]     |                                                   --------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/universal_pipeline.rs:51:85
[INFO] [stdout]    |
[INFO] [stdout] 51 |             gl::GetUniformLocation(program.id(), CString::new("transform").unwrap().as_ptr())
[INFO] [stdout]    |                                                  ---------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/pipelines/universal_pipeline.rs:56:86
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 gl::GetUniformBlockIndex(program.id(), CString::new("frag").unwrap().as_ptr());
[INFO] [stdout]    |                                                        ----------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                        |
[INFO] [stdout]    |                                                        this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/universal_pipeline.rs:192:88
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 gl::GetAttribLocation(program_id, CString::new("in_position").unwrap().as_ptr());
[INFO] [stdout]     |                                                   ------------------------------------ ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/universal_pipeline.rs:204:90
[INFO] [stdout]     |
[INFO] [stdout] 204 |                 gl::GetAttribLocation(program_id, CString::new("in_tex_coords").unwrap().as_ptr());
[INFO] [stdout]     |                                                   -------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/pipelines/universal_pipeline.rs:216:85
[INFO] [stdout]     |
[INFO] [stdout] 216 |                 gl::GetAttribLocation(program_id, CString::new("in_color").unwrap().as_ptr());
[INFO] [stdout]     |                                                   --------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.88s
[INFO] running `Command { std: "docker" "inspect" "ceadbc5638354a613fb6851bcc7e4709fe6eb8c9b0dcb59751610ba5c70afc4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ceadbc5638354a613fb6851bcc7e4709fe6eb8c9b0dcb59751610ba5c70afc4f", kill_on_drop: false }`
[INFO] [stdout] ceadbc5638354a613fb6851bcc7e4709fe6eb8c9b0dcb59751610ba5c70afc4f
